Modern computing scenarios often include multiple heterogeneous users, roles, tasks, databases, files, and preferences. For example, each user may need a different set or subset of the available information to successfully implement his or her part in a large-scale multi-user task or strategy. In such distributed, heterogeneous systems, a user may find it difficult to perform tasks in the absence of contextual information.
To illustrate, consider an information file or object entitled “Jazz.” Without additional information, a user may not be able to quickly determine whether the file is about a musical genre or a professional basketball team. Information associated with a particular piece of data or a particular file can be classified as meta-information (also known as metadata) or contextual information. Metadata is often referred to as “data about the data.” For example, traditional metadata for the “Jazz” file may identify a file size, the structure of the file, and a date of creation. However, access to such traditional metadata may not enable the user to determine the nature of the “Jazz” file. In contrast, contextual information about the file (e.g., the creator of the file is a music fan and has never visited Utah) may enable a proper interpretation or understanding of the file. However, as computing systems become larger and networking technologies enable access to more information sources, retrieving and managing such contextual information may become difficult.